home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 May / CHIP Turkiye Mayıs 1998.iso / w98updt / dcom95.exe / RCDATA / CABINET / relnotes.txt < prev    next >
Text File  |  1997-10-16  |  50KB  |  1,049 lines

  1. DCOM95, Version 1.1 
  2. Release Notes
  3. Last Modified: October 16, 1997
  4.  
  5. DCOM95, Version 1.1, adds support for DCOM to Microsoft Windows 95. 
  6. Please note the following instructions, guidelines, and features 
  7. new to this release of COM and OLE functionality for Windows 95.
  8.  
  9. If you are considering using DCOM95 on a pre-release version of 
  10. Windows 98, please read the Installation Notes below before 
  11. installing DCOM95.
  12.  
  13. Distributed COM (DCOM) extends the Component Object Model (COM) 
  14. infrastructure, transparently and naturally adding support for 
  15. reliable, secure, and efficient communication between COM components 
  16. such as ActiveX Controls, scripts, and Java applets residing on 
  17. different machines in a LAN, a WAN, or on the Internet. With DCOM, 
  18. your application can be distributed across locations that make the 
  19. most sense to your customer and to the application.
  20.  
  21. For more in-depth information, please read the DCOM Technical 
  22. Overview, available on the Microsoft COM Home Page, 
  23. http://www.microsoft.com/com/.
  24.  
  25.  
  26. Contents
  27. ========
  28. I.   Installation Notes
  29.    A. Downloading and Extracting DCOM95
  30.    B. Before You Install DCOM95
  31.    C. Uninstalling DCOM95
  32. II.  Release Notes
  33.    A. What's New in 1.1
  34.    B. Bug Fixes in 1.1
  35.    C. Known Issues
  36.    D. Differences from Internet Explorer 4.0 and Windows 98
  37.    E. DCOM95 File List
  38. III. Developer Notes
  39.    A. What's New in 1.1
  40.    B. Bug Fixes in 1.1 Affecting Developers
  41.    C. Known Issues Affecting Developers
  42.    D. Differences from DCOM on Windows NT
  43.    E. Redistributing DCOM95
  44.    F. Support & Resources
  45.  
  46. **********************************************************************
  47.  
  48. I. INSTALLATION NOTES
  49.  
  50. A. Downloading and Extracting DCOM95
  51. ------------------------------------
  52. If you have downloaded this release of DCOM95 from a Web site, you 
  53. should read the release notes completely before you extract and 
  54. install DCOM95. 
  55.  
  56. After downloading DCOM95, you will have one or two compressed 
  57. executable files on your hard drive:
  58.    - DCOM95.EXE contains the COM system dlls
  59.    - DCM95CFG.EXE contains the DCOM Configuration utility
  60. To extract either file and begin the installation process, type the 
  61. file name at the Command Prompt or double-click the file from Windows 
  62. Explorer. After running DCOM95.EXE, you will be prompted to reboot 
  63. your system to complete the installation. Your existing OLE and COM 
  64. system components will be saved to allow you to uninstall DCOM95 if 
  65. necessary.
  66.  
  67. If you run these programs on any version of Windows NT, no system 
  68. components will be overwritten. You may be asked to reboot your 
  69. system in order for changes to take effect; this is not necessary, 
  70. as nothing as been changed.
  71.  
  72. ----------------------------------------------------------------------
  73.  
  74. B. Before You Install DCOM95
  75. ----------------------------
  76. The DCOM95 installation program updates your system dlls. We 
  77. recommend that you save all open documents and close all programs 
  78. before installing DCOM95.
  79.  
  80. This version of DCOM95 should work with existing and future versions 
  81. of Windows 98. However, it has not been tested extensively with 
  82. Windows 98, and is not a supported configuration at this time. If you 
  83. elect to install this software over Windows 98 and run into any 
  84. problems with your system, please uninstall DCOM95 1.1 and verify the 
  85. problem still exists before attempting to get support on Windows 98. 
  86. Please check the COM Home Page, http://www.microsoft.com/com/, and 
  87. the Windows 98 release notes for information about using DCOM95 1.1 
  88. with Windows 98.
  89.  
  90. If you are using Windows 98 with this version of DCOM95, please note 
  91. the version of Windows 98 you are using when submitting feedback 
  92. or bug reports about DCOM95.
  93.  
  94. ----------------------------------------------------------------------
  95.  
  96. C. Uninstalling DCOM95
  97. ----------------------
  98. You can uninstall DCOM95 from the Windows Control Panel "Add/Remove 
  99. Programs" applet. In the list at the bottom of the "Install/
  100. Uninstall" tab, choose "DCOM for Windows 95" and press the "Add/
  101. Remove" button. This will restore your previous OLE and COM system 
  102. components. You will need to restart your computer to complete the 
  103. uninstall. 
  104.  
  105. NOTE that if you install any applications that require DCOM95, 
  106. performing an uninstall could adversely affect those applications. 
  107.  
  108. One application which you must be particularly careful with is 
  109. Internet Explorer 4.0. Internet Explorer 4.0 ships with the DCOM95 
  110. dlls. If you install Internet Explorer before installing DCOM95, 
  111. then you can safely uninstall DCOM95. If you install DCOM95 before 
  112. installing Internet Explorer and wish to uninstall DCOM95, you 
  113. should uninstall Internet Explorer first, then uninstall DCOM95, 
  114. then reinstall Internet Explorer. This is particularly important 
  115. if you have installed the Windows Desktop Update.
  116.  
  117. **********************************************************************
  118.  
  119. II. RELEASE NOTES
  120.  
  121. A. What's New in 1.1
  122. ====================
  123. This section lists the major new features of DCOM95 that are visible 
  124. to end-users and administrators. Additional features for developers 
  125. are described in the Developer Notes below.
  126.  
  127. International Version
  128. ---------------------
  129. DCOM95 version 1.1 can now be installed over any localized version of 
  130. Windows 95. DCOM95 1.1 does not include the OLE Common Dialogs 
  131. (OLEDLG.DLL), which is the only portion of DCOM95 requiring 
  132. localization. 
  133.  
  134. Note that the end-user license agreement (EULA), release notes, and 
  135. setup prompts have not been localized. When you run DCOM95.EXE on 
  136. a localized version of Windows, standard Windows buttons will be 
  137. localized, but the remaining prompts will not.
  138.  
  139. In addition, the DCOM Configuration utility, DCOMCNFG, is only 
  140. provided in English in this web release. The program will work 
  141. correctly on localized versions of Windows 95.
  142.  
  143. Localized versions of Internet Explorer 4.0 and Windows 98 will 
  144. include localized versions of the OLE Common Dialogs and the DCOM 
  145. Configuration utility.
  146.  
  147. Setup Improvements
  148. ------------------
  149. There have been a few improvements to the DCOM95 setup program:
  150.    - The DCOM95 installation program is now a windowless Windows 
  151.      program, so that it does not display a mysterious console 
  152.      window. All messages from the installation program use 
  153.      Windows message boxes or dialogs.
  154.    - The setup program will detect if a later version of DCOM95 
  155.      is installed and ask you to uninstall it before installing 
  156.      this version of DCOM95.
  157.    - The setup program will retain the current values for the 
  158.      registry entries "EnableDCOM" and "EnableRemoteConnect", if 
  159.      they exist, rather than resetting to default values.
  160.    - The setup program installs the redistribution agreement and 
  161.      release notes to %windir%\system\DCOM95.
  162.  
  163. Winsock2 Compatibility
  164. ----------------------
  165. The Winsock 2.0 release for Windows 95 would not install over DCOM95 
  166. 1.0; this will not be a problem with DCOM95 1.1. DCOM95 1.1 is 
  167. compatible with both Winsock 1.1 and Winsock 2.0. 
  168.  
  169. Client Support for Microsoft Message Queue
  170. ------------------------------------------
  171. DCOM95 includes a new version of RPC that provides enhanced 
  172. client-side support for RPC message queuing, which is a feature of 
  173. Microsoft Message Queue Server (MSMQ). 
  174.  
  175. Updated DCOM Configuration Utility
  176. ----------------------------------
  177. The DCOM Configuration Utility has been updated. In addition to a 
  178. number of minor bug fixes, users may now enable or disable remote 
  179. connections to a machine using DCOMCNFG.
  180.  
  181. To let remote clients connect to servers on a machine,
  182.    1. Start DCOMCNFG on the machine
  183.    2. On the "Default Properties" page, check "Enable Distributed 
  184.       COM on this computer"
  185.    3. On the "Default Security" page, check "Enable Remote 
  186.       Connection"
  187.  
  188. To prevent clients from connecting to servers on a machine,
  189.    1. Start DCOMCNFG on the machine
  190.    2. On the "Default Security" page, uncheck "Enable Remote 
  191.       Connection"
  192.  
  193. Per-AppID Authentication Level
  194. ------------------------------
  195. In certain circumstances, developers or administrators may wish to 
  196. change the default authentication level used for all COM calls 
  197. without calling CoInitializeSecurity. In DCOM95 1.0 and Windows NT, 
  198. the only way to do this was to change the default authentication 
  199. level specified in the registry on a machine-wide basis. With 
  200. DCOM95 1.1, developers or administrators can specify the 
  201. authentication level used per-Appid.
  202.  
  203. To use this feature, 
  204.    1. Start REGEDIT and locate the following key for your application:
  205.          HKCR\APPID\<exe-name>
  206.       Note the AppID value in the right-hand pane. This will look 
  207.       something like:
  208.          {0002DF01-0000-0000-C000-000000000046}
  209.    2. Now locate the AppID key for your application, using the AppID 
  210.       value from step 1:
  211.          HKCR\APPID\<appid-value> 
  212.    3. Add a new DWORD value to this key by selecting the menu option 
  213.       "Edit|New|DWORD Value" with 
  214.          Name = "AuthenticationLevel"
  215.          Data = 1 for no authentication -or-
  216.                 2 for connect-level authentication
  217.  
  218. ----------------------------------------------------------------------
  219.  
  220. B. Bug Fixes in 1.1
  221. ===================
  222. This section describes bugs fixed in DCOM95 1.1 which affected 
  223. applications running on Windows 95 with DCOM95 1.0 installed. 
  224. Additional bug fixes are described in the Developer Notes section 
  225. below.
  226.  
  227. DCOM95 Uninstall: RPCLTC5.DLL Could Not Be Found
  228. ------------------------------------------------
  229. When DCOM95 1.0 is uninstalled, it will always try to restore 
  230. RPCLTC5.DLL and RPCLTS5.DLL from the %windir%\system\oldole 
  231. directory. However, if the files were not already installed when 
  232. DCOM95 is installed, the files will not be in the oldole 
  233. directory, and you will see an error message about a missing 
  234. file. If you select the "Skip File" option on the error dialog,
  235. DCOM95 1.0 uninstall will complete successfully. Windows 95 
  236. Setup only installs RPCLTC5.DLL and RPCLTS5.DLL if the NetBEUI 
  237. protocol is installed. DCOM95 1.1 detects that the files are 
  238. not installed, so that this error message does not occur during 
  239. uninstall.
  240.  
  241. DCOMCNFG Help Includes Windows NT Specific Features
  242. ---------------------------------------------------
  243. In DCOM95 1.0, the help file distributed in DCM95CFG.EXE included 
  244. Windows NT specific features. DCM95CFG.EXE for DCOM95 1.1 includes 
  245. an updated help file which is specific to Windows 95.
  246.  
  247. Microsoft Outlook: External Add-ins and Extensions Cannot Be Loaded
  248. -------------------------------------------------------------------
  249. If you are running Microsoft Outlook and you have DCOM95 1.0 
  250. installed, Outlook will be unable to load external extensions, and 
  251. Outlook 97 may crash when you try to switch from the Tasks folder 
  252. to the Contacts folder. This issue is fixed by DCOM95 1.1.
  253.  
  254. Modal Dialog Box launched by OLE Server Hangs System
  255. ----------------------------------------------------
  256. On systems with DCOM95 1.0 installed, if you are running an 
  257. application that uses OLE and brings up a modal dialog box, the 
  258. application may hang because the modal dialog box is unresponsive 
  259. to mouse or keyboard input. This problem was reported:
  260.    - when attempting to print a Microsoft Word 97 document which 
  261.      is hosted within Internet Explorer. The print dialog appears 
  262.      and neither the dialog nor Internet Explorer respond to mouse 
  263.      or keyboard input.
  264.    - when attempting to send a mail message which contains spelling 
  265.      errors using Microsoft Outlook 97 when WordMail is used and 
  266.      spellchecking is enabled. After the WordMail spellchecker 
  267.      dialog is displayed, if you move the focus away from the 
  268.      dialog, neither Outlook nor the dialog respond to mouse or 
  269.      keyboard input.
  270. This problem is fixed by DCOM95 1.1.
  271.  
  272. Visio: Corrupt Summary Information Causes Access Violation
  273. ----------------------------------------------------------
  274. In certain instances, Visio incorrectly writes an empty thumbnail 
  275. property in a document's Summary Information. The system property 
  276. set implementation provided with DCOM95 1.0 detects that the 
  277. property is written incorrectly, but does not handle the error 
  278. correctly, resulting in an Access Violation. In DCOM95 1.1, the 
  279. error is correctly handled.
  280.  
  281. ----------------------------------------------------------------------
  282.  
  283. C. Known Issues
  284. ===============
  285. This section describes known problems in DCOM95 1.1 which affected 
  286. applications running on Windows 95 with DCOM95 1.1 installed. 
  287. Additional issues are described in the Developer Notes section below.
  288.  
  289. Corel WordPerfect Suite 7: Installation Causes Invalid Page Fault
  290. -----------------------------------------------------------------
  291. If you install Corel WordPerfect Suite 7 on a Windows 95 system 
  292. running DCOM95, you may get an invalid page fault in PfOd70.pfc 
  293. during installation. If this error appears, just close the error 
  294. message dialog box. Setup should continue successfully.
  295.  
  296. CyberLife Creatures 1.0: Does Not Function Correctly Without Upgrade
  297. --------------------------------------------------------------------
  298. CyberLife Creatures 1.0 is not fully compatible with DCOM95. You will 
  299. not be able to connect to the Creatures Web site from within 
  300. Creatures, nor will all of the kits function correctly. These 
  301. problems are addressed by the Creatures Upgrade Pack 2, which you 
  302. can download from the Creatures Web site, 
  303. http://www.cyberlife.co.uk/creatures_frameset.htm.
  304.  
  305. Microsoft Access95: Database Replication Does Not Work
  306. ------------------------------------------------------
  307. If you try to replicate an Access database using Microsoft Access95 
  308. on machines with DCOM95 installed, you may get the following error 
  309. message: "Microsoft Access cannot complete this operation because 
  310. it can't find or initialize the dynamic-link library Msjtrclr". 
  311. This is a problem in Access95. You may workaround this issue by 
  312. writing a program which uses the Access object model rather than 
  313. the replica tool, or by using the briefcase for replication. 
  314. Microsoft Access97 is not affected by this issue.
  315.  
  316. Microsoft Dialup Networking: Version Conflict with SECUR32.DLL
  317. --------------------------------------------------------------
  318. If you install Microsoft Dialup Networking from Windows 95 after 
  319. installing DCOM95, you may see a file version conflict dialog for 
  320. SECUR32.DLL:
  321.    "Version Conflict : A file being copied is older than the file 
  322.    currently on your computer. It is recommended that you keep 
  323.    your existing file."
  324.       File name:   secur32.dll
  325.       Description  Microsoft Win32 Security Services
  326.       Your version 4.10.1057
  327.    Do you want to keep this file?
  328.  
  329. This is because DCOM95 includes a later version of SECUR32.DLL 
  330. than shipped with Windows 95. If this error message occurs, 
  331. select "Yes" to keep the file currently installed on your system.
  332.  
  333. Microsoft Fax: Windows Messaging IPF on Shutdown
  334. ------------------------------------------------
  335. On machines with DCOM95 and Microsoft FAX installed, an Invalid 
  336. Page Fault occurs in AWFXCG32.DLL whenever Windows Messaging 
  337. shuts down. This is due to memory corruption within Microsoft Fax. 
  338. Since the error occurs as the process is exiting, you should be 
  339. able to continue using your system without problem after 
  340. dismissing the error dialog. Internet Explorer 4.0 and Windows 
  341. 98 include an updated AWFXCG32.DLL which does not have this problem.
  342.  
  343. Microsoft Object Packager: Loses Ability to Drag/Drop
  344. -----------------------------------------------------
  345. On machines with DCOM95 installed, if you drag a file which does 
  346. not have an associated OLE server and drop it into an OLE 
  347. Document, the Object Packager will be invoked to insert a package 
  348. into the document. In some cases, once you have done this, when 
  349. you try to drag and drop another file, you will get an error 
  350. message similar to "The server application, source file, or 
  351. item cannot be found.....". Once you get this error message, you 
  352. are not able to drag and drop objects again until you restart 
  353. your machine. This seems to happen most often with large 
  354. packages which are inserted into large documents.  
  355.  
  356. Microsoft PowerPoint: Fails to Insert an Excel 97 Object
  357. --------------------------------------------------------
  358. If Autosave is enabled in Excel 97, PowerPoint 97 may fail to insert 
  359. an Excel 97 object. Instead, the user will see the error message 
  360. "PROBLEM: Error Message the Server is busy or not available". This 
  361. is due to a combination of problems in Windows 95 COM and PowerPoint. 
  362. The COM problem is fixed in DCOM95 1.1. An update for PowerPoint is 
  363. also required to completely resolve the issue.
  364.  
  365. Telcom Fax 3.1: Unable to Send Network Faxes
  366. --------------------------------------------
  367. This product currently does not work with DCOM95 installed on Win95 
  368. client machines. Contact the manufacturer (http://www.ltc.com/) for 
  369. information about Telcom Fax 4.0, which is compatible with DCOM95.
  370.  
  371. Visio 1.0 Insert Object Fails
  372. -----------------------------
  373. With DCOM95 installed, attempting to insert an object into a Visio 
  374. 1.0 document may result in an error message: "An error (1331) 
  375. occurred during the action Insert Object. The server failed to create 
  376. the new document. "(Object Linking and Embedding)" This problem does 
  377. not occur with later versions of Visio.
  378.  
  379. ----------------------------------------------------------------------
  380.  
  381. D. Differences from Internet Explorer 4.0 and Windows 98
  382. ========================================================
  383. Internet Explorer 4.0 and Windows 98 both include updated COM dlls 
  384. similar in functionality to DCOM95 version 1.1. This section 
  385. describes the differences between the dlls included in these products.
  386.  
  387. Internet Explorer 4.0 includes DCOM95 build 1120. Windows 98 beta 2 
  388. and beta 3 also include DCOM95 build 1120. DCOM95 version 1.1 
  389. (build 1718) contains a small number of fixes which are not in build 
  390. 1120 for forward compatibility with forthcoming releases of Windows 
  391. NT 5.0, Windows NT 4.0 Service Pack 4, and the COM Internet Services 
  392. beta. In addition, these bugs are fixed in DCOM95 version 1.1, but 
  393. not in build 1120:
  394.    - RPCSS Page Fault in OLE32 When No Network Support Installed
  395.    - 16-bit Server Crashes When Many Objects Are Created And Destroyed
  396.    - MkParseDisplayName assumes MAX_PATH
  397.  
  398. For information about differences between DCOM95 and future releases 
  399. of Internet Explorer and Windows 98, please check the release notes 
  400. for those products.
  401.  
  402. ----------------------------------------------------------------------
  403.  
  404. E. DCOM95 File List
  405. ===================
  406. This table lists the version numbers of files distributed with DCOM95 
  407. 1.0, DCOM95 1.1, and DCOM95 build 1120(as shipped with Internet 
  408. Explorer 4.0 and Windows 98 beta 2 or beta3).
  409.  
  410. File Name      DCOM95 1.0     DCOM95 1.1     Build 1120
  411. =============  ============   ============   ==========     
  412. comcat.dll     4.71.1454.1    5.0.1600.1     5.0.1555.1
  413. compobj.dll    2.30.41.60     2.30.100.0     2.30.100.0
  414. dcomcnfg.exe   5.0.1413.1*    5.0.1600.0*    5.0.1555.0
  415. dcomcnfg.hlp   --             --             --
  416. dllhost.exe    4.71.426.0     4.71.1718.0    4.71.1120.0
  417. iprop.dll      4.0.1381.3     4.0.1381.6     4.0.1381.6
  418. ole2.dll       2.30.41.60     2.30.100.0     2.30.100.0
  419. ole32.dll      4.71.430.0     4.71.1718.0    4.71.1120.0
  420. olecnv32.dll   4.71.426.0     4.71.1718.0    4.71.1120.0
  421. oledlg.dll     5.0.1454.1     n/s            5.0.1555.0
  422. olethk32.dll   4.71.426.0     4.71.1718.0    4.71.1120.0
  423. rpcltc1.dll    4.10.0.2000    4.71.1718.0    4.71.1120.0
  424. rpcltc5.dll    4.10.0.2000    4.71.1718.0    4.71.1120.0
  425. rpcltccm.dll   4.10.0.2000    4.71.1718.0    4.71.1120.0
  426. rpclts5.dll    4.10.0.2000    4.71.1718.0    4.71.1120.0
  427. rpcltscm.dll   4.10.0.2000    4.71.1718.0    4.71.1120.0
  428. rpcltspx.dll   4.10.0.2000    4.71.1718.0    4.71.1120.0
  429. rpcmqcl.dll    n/s            4.71.1718.0    4.71.1120.0
  430. rpcmqsvr.dll   n/s            4.71.1718.0    4.71.1120.0
  431. rpcns4.dll     --             --             --
  432. rpcrt4.dll     4.71.423.0     4.71.1718.0    4.71.1120.0
  433. rpcss.exe      4.71.426.0     4.71.1718.0    4.71.1120.0
  434. storage.dll    2.30.41.60     2.30.100.0     2.30.100.0
  435. secur32.dll    4.10.0.1057    4.10.0.1057    4.10.0.1057**
  436. imagehlp.dll   4.0.1381.1     4.0.1381.1                    
  437. stdole2.tlb    2.20.4111.1    2.20.4122.1
  438. stdole32.tlb   2.10.3027.1    2.10.3027.1
  439. oleaut32.dll   2.20.4111.1    2.20.4122.1    
  440. olepro32.dll   n/s            2.20.4122.1
  441. asycfilt.dll   n/s            2.20.4122.1                
  442. msvcrt40.dll   4.0.0.5270*    4.0.0.5270*                
  443. mfc40.dll      4.0.0.5277*    4.0.0.5277*            
  444.  
  445. *   : included in DCM95CFG.EXE
  446. **  : only in Internet Explorer 4.0
  447. --  : no version number
  448. n/s : not shipped
  449.  
  450. **********************************************************************
  451.  
  452. III. DEVELOPER NOTES
  453.  
  454. A. What's New in 1.1
  455. ====================
  456.  
  457. Component Category Manager Features Folded into OLE32
  458. -----------------------------------------------------
  459. The Component Category Manager, COMCAT.DLL, functionality is now part 
  460. of OLE32.DLL. This was done to improve performance. DCOM95 1.1 
  461. includes a COMCAT.DLL which forwards requests to OLE32.DLL, to handle 
  462. applications which directly interact with COMCAT.DLL. 
  463.  
  464. IGlobalInterfaceTable Support
  465. -----------------------------
  466. The IGlobalInterfaceTable interface added to Windows NT in SP3 is 
  467. now supported in DCOM95 1.1. Please see the Platform SDK 
  468. documentation for information about this interface.
  469.  
  470. Improved Dialup (RAS) Support
  471. -----------------------------
  472. DCOM95 1.0 did not work well over dialup connections. DCOM95 1.1 
  473. includes a number of fixes which let both calls and callbacks work 
  474. over dialup connections.
  475.  
  476. In particular, if a server machine gets a new IP address, DCOM95 
  477. 1.1 clients will be able to talk to new DCOM servers on that 
  478. machine, even if they have previously established connections to 
  479. other DCOM servers on the machine using the old IP address.
  480.  
  481. Also, if a DCOM95 1.1 server machine acquires a new IP address, 
  482. remote clients over dialup connections will be able to resolve 
  483. OXIDs and unmarshal interfaces. (Note that a client machine 
  484. which receives callbacks is acting as a server.) However, the 
  485. dialup connection must be established before the COM server 
  486. process is started.
  487.  
  488. New DCOM Protocol Version Number
  489. --------------------------------
  490. The DCOM protocol version number is now 5.3. 
  491.  
  492. New RPC APIs
  493. ------------
  494. The following APIs are now implemented in DCOM95 1.1:
  495.    - RpcServerUseAllProtseqsEx
  496.    - RpcServerUseAllProtseqsIfEx
  497.    - RpcServerUseProtseqExA
  498.    - RpcServerUseProtseqExW
  499.    - RpcServerUseProtseqIfExA
  500.    - RpcServerUseProtseqIfExW
  501. Please see the Platform SDK documentation for information 
  502. about these APIs.
  503.  
  504. New Storage API Stubs
  505. ---------------------
  506. Windows NT 5.0 introduces some new storage APIs, Stg*StorageEx(). 
  507. These are implemented in DCOM95 to return E_NOTIMPL.
  508.  
  509. RPCSS Changes
  510. -------------
  511. RPCSS is used for remote communication between COM objects. DCOM95 
  512. attempts to delay launching RPCSS until it is truly necessary. There 
  513. were several scenarios in DCOM95 1.0 in which RPCSS was not started 
  514. by COM at the appropriate time. In DCOM95 1.1, all known scenarios 
  515. which required pre-launching RPCSS.EXE have been fixed. You should 
  516. no longer need to pre-launch RPCSS.
  517.  
  518. In DCOM95 1.0, RPCSS.EXE was shut down when a user logged off. In 
  519. DCOM95 1.1, this is not the case. RPCSS.EXE remains running across 
  520. logon sessions. This is required to support applications such as 
  521. Microsoft Message Queue Server (MSMQ) which run as services.
  522.  
  523. Also, RPCSS.EXE no longer appears in the Windows 95 Task List.
  524.  
  525. SetBlanket on IUnknown affects AddRef and Release calls 
  526. -------------------------------------------------------
  527. When secure reference counting is turned off, calling 
  528. IClientSecurity::SetBlanket on IUnknown will now affect AddRef 
  529. and Release calls.
  530.  
  531. ----------------------------------------------------------------------
  532.  
  533. B. Bug Fixes in 1.1 Affecting Developers
  534. ========================================
  535. This section lists additional bug fixes in DCOM95 1.1 which are not 
  536. likely to affect end-users, but which developers or testers might 
  537. encounter.
  538.  
  539. 16-bit Server Crashes When Many Objects Are Created And Destroyed
  540. -----------------------------------------------------------------
  541. When thousands of 16-bit COM objects were created, marshaled to 
  542. another apartment, then destroyed within a short period of time 
  543. (< 2 minutes), a stack fault would occur in the server when DCOM 
  544. cleaned up its internal list of object IDs (OIDs). The OID cleanup 
  545. code has been modified so it does not cause a stack fault.
  546.  
  547. Access Violation When In-Process Server Fails to Load
  548. -----------------------------------------------------
  549. In certain situations, DCOM95 1.0 was not able to detect that an 
  550. in-process server was not loaded successfully, because 
  551. GetLastError() was not returning the correct error code after 
  552. LoadLibraryEx() failed. An access violation would occur when 
  553. attempting to access the server. DCOM95 1.1 detects this situation 
  554. and returns ERROR_BAD_EXE_FORMAT when the server is loaded.
  555.  
  556. Class Moniker Not Registered Correctly
  557. --------------------------------------
  558. In DCOM95 1.0, the PROGID for the Class Moniker was not added to 
  559. the registry during setup. This would prevent MkParseDisplayName 
  560. from recognizing a moniker display name "clsid:<clsid>". DCOM95 
  561. 1.1 correctly adds the Class Moniker PROGID to the registry during 
  562. setup.
  563.  
  564. COMCAT: Category [Un]Registration Under a Non-Existant CLSID Succeeds
  565. ---------------------------------------------------------------------
  566. In DCOM95 1.0 and previous versions of COMCAT.DLL, registering and 
  567. unregistering implemented or required class categories for a 
  568. non-existant CLSID succeeded. In DCOM95 1.1, attempts to register or 
  569. unregister categories for a non-existant CLSID fail.
  570.  
  571. COMCAT: GetCategoryDesc Returns Wrong LCID 
  572. ------------------------------------------
  573. In DCOM95 1.0 and previous versions of COMCAT.DLL, when the 
  574. description of a category for the specified LCID is not found, the 
  575. returned description will be for the first locale under the category, 
  576. but the returned LCID is not updated to the first locale value. This 
  577. is corrected in DCOM95 1.1.
  578.  
  579. COMCAT: IEnumXXX::Next() Succeeds Unexpectedly
  580. ----------------------------------------------
  581. In DCOM95 1.0 and previous versions of COMCAT.DLL, the Next method 
  582. of IEnumCATEGORYINFO, IEnumCATID, and IEnumCLSID succeeds when the 
  583. caller passes pceltFetched NULL and celt > 1. In DCOM95 1.1, these 
  584. methods match the specified behavior, which is to fail.
  585.  
  586. DllCanUnloadNow/CoFreeUnusedLibraries Race Condition
  587. ----------------------------------------------------
  588. Under certain circumstances, it was possible for COM to try to unload 
  589. in-process COM servers which were already unloaded. This would 
  590. generally cause a page fault. This has been fixed in DCOM95 1.1.
  591.  
  592. IStorage::SetElementTimes Does Not Marshal NULL Parameters Correctly
  593. --------------------------------------------------------------------
  594. If one or more parameters are set to NULL in a call to 
  595. IStorage::SetElementTimes on a storage object obtained by standard 
  596. marshaling, SetElementTimes returns RPC_X_NULL_REF_POINTER 
  597. (0x800706f4). The interface definition of IStorage has been modified 
  598. to handle NULL parameters correctly. 
  599.  
  600. NOTE that this means marshaling does not work correctly to a machine 
  601. which is running Windows NT 4.0 SP3 or earlier, Windows 95, or 
  602. Windows 95 with DCOM95 1.0. Windows NT 4.0 SP4, Windows NT 5.0, and 
  603. Windows 98 will be compatible with DCOM95 1.1.
  604.  
  605. Marshaling Problems
  606. -------------------
  607. In DCOM95 1.0, big-endian values and Variants were not always 
  608. marshaled correctly. These problems have been fixed in DCOM95 1.1.
  609.  
  610. MkParseDisplayName assumes MAX_PATH
  611. -----------------------------------
  612. MkParseDisplayName assumed any kind of moniker it did not recognize 
  613. was a file moniker and thus that the maximum length of the display 
  614. name was MAX_PATH characters. If the display name was really longer 
  615. than MAX_PATH characters, the stack would be corrupted and the client 
  616. which called MkParseDisplayName would crash. MkParseDisplayName now 
  617. makes no assumptions about the maximum length of a moniker display 
  618. name.
  619.  
  620. Remote COM Calls Fail Because RPCSS is not Started
  621. --------------------------------------------------
  622. In DCOM95 1.0, there were a number of scenarios where RPCSS was not 
  623. started at the appropriate time, causing remote COM calls to fail. 
  624. All known scenarios which required pre-launching RPCSS.EXE have been 
  625. fixed in DCOM95 1.1.
  626.  
  627. RPCRT4.DLL Leaks Memory When Loaded and Unloaded Within a Process
  628. -----------------------------------------------------------------
  629. If RPCRT4.DLL was repeatedly loaded and unloaded within a running 
  630. process, system memory functions such as HeapCreate and CreateThread 
  631. would start failing, due to a memory leak in RPCRT4. This has been 
  632. fixed.
  633.  
  634. RPCSS Assumes All Servers On Same Machine Speak The Same Protocol
  635. -----------------------------------------------------------------
  636. Assume a client C1 on machine C starts talking to a server X on 
  637. machine S via protocol P1. Now another client C2 (also on machine 
  638. C) comes along that wants to talk to server Y on machine S via 
  639. protocol P2. This did not work correctly - RPCSS on C assumed that 
  640. all servers on S would speak the same protocol (P1) using the same 
  641. endpoints and did not correctly handle the binding information 
  642. needed to speak to S. This could lead to crashes on the client 
  643. machine. Although DCOM95 currently only supports one protocol, this 
  644. has been fixed for forward compatibility with the COM Internet 
  645. Services (which introduces a second protocol) and Windows NT 5.0 
  646. (which lets you specify which endpoints to use for different servers).
  647.  
  648. RPCSS Can Not Restart After a Crash
  649. -----------------------------------
  650. In DCOM95 1.0, RPCSS cached information in shared memory, preventing 
  651. RPCSS from being restarted if it crashed. RPCSS no longer caches 
  652. information in shared memory, so it can be restarted.
  653.  
  654. RPCSS Page Fault in OLE32 When No Network Support Installed
  655. -----------------------------------------------------------
  656. If RPCSS.EXE was launched for any reason on machines without network 
  657. support installed, a page fault in OLE32.DLL might occur. The RPCSS 
  658. startup code has been cleaned up to handle scenarios like this in 
  659. DCOM95 1.1.
  660.  
  661. System Property Set Implementation Leaks Memory
  662. -----------------------------------------------
  663. Applications that retrieve property values from property sets using 
  664. the system-provided property set implementation exhibit a gradual 
  665. increase in memory usage. The IPROP.DLL included with DCOM95 1.1 
  666. fixes this problem.
  667.  
  668. System Property Set Implementation Loses Part of DocumentSummaryInfo
  669. --------------------------------------------------------------------
  670. With DCOM95 1.0 and previous versions of IPROP.DLL, when a client 
  671. uses the system-provided property set implementation to create the 
  672. user-defined properties in a DocumentSummaryInfo property set, the 
  673. primary section of the property set is lost. This is because the 
  674. system implementation deletes any existing streams when a property 
  675. set is created. The IPROP.DLL included with DCOM95 1.1 correct 
  676. handles creating all sections of DocumentSummaryInfo and 
  677. SummaryInformation property sets.
  678.  
  679. WM_TIMERs fill queue on long call
  680. ---------------------------------
  681. In DCOM95 1.0, COM or RPC calls which took a long time to complete 
  682. could generate WM_TIMER messages but not dispatch them, filling the 
  683. application's message queue and consuming space in the 16-bit heap. 
  684. This could cause system response problems and instability. This is 
  685. fixed in DCOM95 1.1.
  686.  
  687. ----------------------------------------------------------------------
  688.  
  689. C. Known Issues Affecting Developers
  690. ====================================
  691.  
  692. AutoDial Dialog May Appear Unexpectedly
  693. ---------------------------------------
  694. If AutoDial is enabled on a Windows 95 machine with DCOM95 installed, 
  695. the AutoDial dialog may appear when a remote object is accessed via 
  696. DCOM, even if the remote machine is accessible without establishing a 
  697. dialup connection. If you cancel the AutoDial dialog, the call to the 
  698. remote object will succeed.
  699.  
  700. Compiler Errors 
  701. ---------------
  702. There are two issues that can result in the "'xxx' is not a member 
  703. of _COSERVERINFO" and "'CoInitializeEx' (or 'CoCreateInstanceEx'): 
  704. undeclared identifier" compilation errors while building DCOM 
  705. programs. 
  706.  
  707. One is caused by out-of-date headers that expose the changes of the 
  708. definition of the COSERVERINFO structure from Windows NT 4.0 Beta 1. 
  709. In order to support the ActiveX SDK Beta, Microsoft Visual C++r 4.2 
  710. shipped with headers from Beta 1 of Windows NT 4.0. These have an 
  711. earlier and incorrect version of the COSERVERINFO structure definition. 
  712. To work around this problem, install the final Windows NT 4.0 SDK and 
  713. put its include, lib, and bin directories first on your tool paths. A 
  714. patch to Microsoft Visual C++r 4.2 is also available at http://www.microsoft.com/visualc/patches/v4.2b/vc42b.htm 
  715. which updates these headers. 
  716.  
  717. A second issue revolves around the need for pre-processor definitions 
  718. to allow access to DCOM-only features in the Win32 header files. The 
  719. DCOM features in the Windows NT 4.0 SDK (and in the Microsoft Visual 
  720. C++ 4.2 + patch headers) are protected by two preprocessor 
  721. definitions. 
  722.  
  723. One of these, setting _WIN32_WINNT=0x0400, is used for targeting 
  724. applications for Windows NT 4.0. Use this setting if you are building 
  725. a DCOM-aware application for Windows NT 4.0 only. Note that this 
  726. setting is automatically established by the makefile helper that comes 
  727. with the SDK when you use TARGETOS=WINNT and use 
  728. "!include <win32.mak>". 
  729.  
  730. The other setting, _WIN32_DCOM, is used for targeting applications 
  731. for Windows 95 (with DCOM installed) as well as Windows NT 4.0. Use 
  732. this to build DCOM applications for both platforms without making 
  733. use of Windows NT-specific features. 
  734.  
  735. If you don't use one of these two settings, the compiler will warn 
  736. you or halt with errors about structures and APIs that you use that 
  737. are specific to Windows NT 4.0 or DCOM for Windows 95. 
  738.  
  739. Applications using CLSCTX_SERVER/CLSCTX_ALL do not run on plain 
  740. Windows 95 or previous versions of Windows NT if compiled with 
  741. _WIN32_DCOM or _WIN32_WINNT>=0x0400. 
  742.  
  743. The new definitions of CLSCTX_SERVER and CLSCTX_ALL include 
  744. CLSCTX_REMOTE_SERVER. Applications using these flags will not run on 
  745. plain Windows 95 or previous versions of Windows NT when compiled as 
  746. instructed, above, with the _WIN32_WINNT=0x0400 or _WIN32_DCOM flags. 
  747. Previous versions of COM/OLE validate the flags passed to 
  748. CoCreateInstance or CoGetClassObject and fail with E_INVALIDARG when 
  749. CLSCTX_REMOTE_SERVER is specified. When targeting both Windows NT 4.0 
  750. and Windows 95 or previous versions of Windows NT, you need to ensure 
  751. that the _WIN32_WINNT preprocessor symbol is defined to be less than 
  752. 0x0400 and the _WIN32_DCOM preprocessor symbol is not defined. 
  753.  
  754. DCOM Dialup Connections Don't Work When Ethernet Card is Stopped
  755. ----------------------------------------------------------------
  756. In situations where an ethernet card is used, the card is stopped, 
  757. and then a dialup (RAS) connection is established, DCOM calls may 
  758. fail or crash. 
  759.  
  760. Dialup Connections Do Not Work to Running Servers
  761. -------------------------------------------------
  762. If a COM server is running on a DCOM95 server machine before a client 
  763. establishes a dialup (RAS) connection to the server machine, the 
  764. remote client will not be able to talk to the COM server over
  765. the RAS connection.
  766.  
  767. IAccessControl::IsAccessAllowed Erroneously Denies Access
  768. ---------------------------------------------------------
  769. IAccessControl::IsAccessAllowed uses the API NetAccessCheck() to 
  770. determine whether a users is allowed access. In some cases, 
  771. NetAccessCheck returns the wrong value, causing IsAccessAllowed to 
  772. return the wrong value as well.
  773.  
  774. Receiving OR_INVALID_OXID (0x80070776) 
  775. --------------------------------------
  776. When using COM creation APIs (such as CoCreateInstance, 
  777. CoCreateInstanceEx, or CoGetClassObject) to create remote objects 
  778. (objects on other machines), incorrectly configured network settings 
  779. that otherwise appear to support file or print sharing properly may 
  780. cause Distributed COM to fail with the distinguished error, 
  781. OR_INVALID_OXID (0x80070776). This is typically not a problem with 
  782. COM, but is simply a network configuration problem that is not 
  783. exposed by other networking operations that have different fall-back 
  784. behavior from COM over improperly configured protocols. 
  785.  
  786. A common occurrence of this failure is when a machine has been 
  787. configured with TCP/IP as well as another network transport, such 
  788. as IPX/SPX, or NetBeui, but the TCP/IP configuration is improperly 
  789. configured. For example, it may be configured to be dynamically 
  790. assigned an IP address using DHCP, yet no DHCP server may be 
  791. available and so it has no IP address. 
  792.  
  793. The solution to this problem is to properly configure TCP/IP 
  794. networking. A test that TCP/IP networking is properly configured 
  795. is to use the PING command to test the connection between the client 
  796. and the server. That is: 
  797.  
  798. From the client: PING <server-host-name> 
  799.  
  800. From the server: PING <client-host-name> 
  801.  
  802. If either PING command fails with errors such as "Bad IP address 
  803. <xxx>" or "Request timed out," you may experience difficulties 
  804. creating remote objects until the issue preventing the connection 
  805. is resolved. 
  806.  
  807. TreatAs on Remote Server 
  808. ------------------------
  809. During a remote activation for a specific class, the server side 
  810. does not correctly use the TreatAs mappings: Although the correct 
  811. server process gets connected to, COM still expects the original 
  812. CLSID instead of the mapped CLSID. If the server does not provide 
  813. a class factory (through CoRegisterClassObject) for the original 
  814. CLSID, the activation times out after 30 seconds. 
  815.  
  816. Two Identical FORMATETC's on Clipboard Seen As One
  817. --------------------------------------------------
  818. If a data object is created with two identical FORMATETC formats, 
  819. or two FORMATETC formats which differ only in their aspect, and 
  820. the data object is set to the clipboard, when you get the data 
  821. object from the clipboard and enumerate its formats, there is 
  822. only one FORMATETC.
  823.  
  824. VREDIR BlueScreen During CoCreateInstance
  825. -----------------------------------------
  826. When using DCOM between a DCOM95 machine and an Windows NT machine 
  827. in a Novell Netware workgroup, if you map a drive letter on the 
  828. DCOM95 machine to a shared directory on the Windows NT machine, you 
  829. may get a blue screen in VREDIR during CoCreateInstances call on 
  830. the DCOM95 client machine. The problem does not occur if you don't 
  831. have mapped drives. The system can recover from the blue screen if 
  832. you hit enter. This problem has only been seen with the original 
  833. Windows 95 release, not with OSR2 or later. A hotfix for VREDIR.VXD 
  834. is available from Microsoft to correct this problem.
  835.  
  836. ----------------------------------------------------------------------
  837.  
  838. D. Differences from DCOM on Windows NT
  839. ======================================
  840.  
  841. Security Capabilities of DCOM for Windows 95 
  842. --------------------------------------------
  843. The core functionality and application programming interfaces (APIs) 
  844. new to Distributed COM are identical in both Windows 95 and Windows 
  845. NT 4.0; however, certain capabilities related to security are 
  846. different because of the different security infrastructures of the 
  847. operating systems. Using the default security settings of the system 
  848. is recommended; it is also necessary to enable "user-level" security 
  849. on file-system shares (see below). 
  850.  
  851. The following services, which can be used to override default 
  852. security, are available: 
  853.    - CoInitializeSecurity 
  854.    - CoQueryAuthenticationService 
  855.    - CoQueryProxyBlanket 
  856.    - CoSetProxyBlanket 
  857.    - CoQueryClientBlanket 
  858.    - IClientSecurity Interface 
  859.    - IServerSecurity Interface 
  860. However, certain capabilities that are part of DCOM for Windows NT 
  861. 4.0 will not be available on Windows 95 because of differences in 
  862. the security infrastructure on Windows 95. 
  863.  
  864. In particular, the lack of Win32 security APIs, such as the ability 
  865. to create Access Control Lists (ACLs), and the AccessCheck function, 
  866. as well as the lack of a security context associated with thread- and 
  867. process-tokens, should be taken into account. Windows 95 does not 
  868. natively support these APIs or constructs. Because of this, DCOM95 
  869. will not support impersonation (specifically, the CoImpersonateClient 
  870. and CoRevertToSelf helper functions over the IServerSecurity 
  871. interface), which is based on thread- and process-token security in 
  872. Windows NT 4.0. Impersonation is commonly used to automatically 
  873. control access to restrictable system resources such as the file 
  874. system, other processes, and the network. These resources are not 
  875. restrictable on Windows 95. 
  876.  
  877. DCOM95 does, however, offer programmers various helper objects to 
  878. provide access-control-list and access-check functionality, which 
  879. can be used to explicitly control access by remote clients to both 
  880. system and user-defined resources or data. These helper objects are 
  881. provided by the system object CLSID_DCOMAccessControl, which 
  882. implements the IAccessControl interface.
  883.  
  884. IAccessControl should be used to manage security permissions 
  885. programmatically wherever portability between Windows 95 and Windows 
  886. NT is a concern. The CLSID_DCOMAccessControl object is available in 
  887. all releases of DCOM95 and in Windows NT 4.0 SP2 or later. Please 
  888. see the Platform SDK documentation for more information about 
  889. IAccessControl.
  890.  
  891. Launch and Access Security 
  892. --------------------------
  893. "Launch security" -- controlling who can launch server-class code 
  894. -- is not provided in DCOM for Windows 95 because launching servers 
  895. is not supported. Servers/Classes must already be running in order 
  896. for remote clients to connect and make use of their services. 
  897.  
  898. DCOM95 does support the ability to connect to already running 
  899. classes/servers. "Access security" is supported via the 
  900. \APPID\{.}\AccessPermissions registry key and adjusted via the 
  901. DCOMCNFG tool or during installation or setup of the server code. 
  902. Unauthenticated users will be able to use servers if you configure 
  903. the class to support unauthenticated connections (through static 
  904. configuration tools or dynamically via the CoInitializeSecurity 
  905. function) and you can also build arbitrary access-control lists 
  906. to define which users and groups can access specific services. 
  907.  
  908. Authentication Levels 
  909. ---------------------
  910. DCOM95 clients can make DCOM calls using any authentication level. 
  911. DCOM95 servers (or clients receiving callbacks) can only accept DCOM 
  912. calls using RPC_C_AUTHN_LEVEL_NONE or RPC_C_AUTHN_LEVEL_CONNECT 
  913. authentication levels.
  914.  
  915. Transports
  916. ----------
  917. DCOM95 only supports TCP connectivity. If you do not have the TCP/IP 
  918. protocol installed, DCOM95 will not be able to support cross-machine 
  919. COM. 
  920.  
  921. Registry Settings 
  922. -----------------
  923. The following registry keys found under 
  924. HKEY_LOCAL_MACHINE\Software\Microsoft\OLE are established by DCOM95. 
  925.  
  926. EnableDCOM (default value = "Y") 
  927.  
  928.    Enables Distributed COM on this machine. When set to "N", the 
  929.    machine is prevented from connecting to or activating objects on 
  930.    remote machines, and remote machines are unable to connect to 
  931.    objects on the local machine. Setting this value to "Y" enables 
  932.    either connectivity as a client to remote objects (when 
  933.    EnableRemoteConnect='N', see below), or full client/server 
  934.    connectivity (when EnableRemoteConnect='Y', see below). 
  935.  
  936. EnableRemoteConnect (default value = "N") 
  937.  
  938.    Enables COM servers to act as DCOM servers. When this value is set 
  939.    to "Y", references to interfaces on local objects can be passed to 
  940.    remote clients, and remote clients are allowed to connect to 
  941.    running objects. When this value is set to "N", this machine is 
  942.    allowed to connect to remote objects but cannot act as a server 
  943.    -- that is, the machine is prevented from connecting to running 
  944.    objects. 
  945.  
  946. In addition, the following registry key is found under 
  947. HKEY_CLASSES_ROOT\CLSID: 
  948.  
  949. {bdc67890-4fc0-11d0-a805-00aa006d2ea4}\InstalledVersion
  950.  
  951.    Contains the version number of DCOM for Windows 95, in the format 
  952.    "a,b,c,d". This value can be used by Internet Component Download 
  953.    to determine whether DCOM95 is installed. This value is added to 
  954.    the registry during setup, and should not be modified. 
  955.  
  956. Using Windows 95 as a DCOM Server Host
  957. --------------------------------------
  958. Windows 95 can be a DCOM server host with the following caveats:
  959.  
  960.    1. There is no launch capability which means the DCOM server 
  961.       process must be already running for a client to connect to it.
  962.    2. If secure connections are needed, then the server (and in the 
  963.       case of callbacks, the client) must have user-level access 
  964.       control with the name of a security provider set. 
  965.    3. The registry value "EnableRemoteConnect" must be set to "Y".
  966.  
  967. DCOM95 has been tested most extensively using the Windows NT Domain 
  968. security provider. You may encounter problems using other security 
  969. providers.
  970.  
  971. To establish user-level access control, you must have FILESEC.VXD 
  972. installed. This is generally installed on Windows 95 machines by 
  973. installing File and Print Sharing.
  974.  
  975. To enable user-level access control, launch the Network control panel 
  976. applet, choose the "Access Control" tab, check the box marked 
  977. "User-level access control", and enter the name of your security 
  978. domain. This may affect the way you currently share directories on 
  979. the network from your computer; see the on-line documentation for 
  980. details. If you do not have an "Access Control" tab in your network 
  981. configuration control panel, you need to install a network client 
  982. service. See the "Network clients, setting up" help topic in the 
  983. on-line help for information on installing a network client.
  984.  
  985. ----------------------------------------------------------------------
  986.  
  987. E. Redistributing DCOM95
  988. ========================
  989. If you depend on DCOM95 functionality, you have two options: 
  990. redistribute the updated system files (DCOM95) with your application, 
  991. or point users at our DCOM95 web release. Pointing users at the web 
  992. release is recommended if your application will be downloaded from 
  993. the web, since DCOM95 is fairly large and many users may already 
  994. have it. 
  995.  
  996. For further information about redistributing DCOM95, please review 
  997. the redistribution guidelines in DCOMDIST.TXT and the 
  998. redistribution agreement in DCOMLIC.TXT.
  999.  
  1000. ----------------------------------------------------------------------
  1001.  
  1002. F. Support & Resources
  1003. ======================
  1004.  
  1005. Paid Support
  1006. ------------
  1007. DCOM95 application development is supported by Microsoft Technical 
  1008. Support. You can ask questions through your Premier Level support 
  1009. contract. You can also ask questions through your Priority Level 
  1010. contract or purchase individual Priority Support incidents 
  1011. (essentially a one-time fee for one question). If you would like to 
  1012. understand more about Microsoft's paid support options, you can call 
  1013. Microsoft Support Sales at (800) 936-3500 from 6:00 a.m. to 6:00 p.m. 
  1014. Pacific time, Monday through Friday, excluding holidays. Please note 
  1015. that technical support is not available through this number. Microsoft 
  1016. Technical Support Information is also available on the World Wide 
  1017. Web at http://www.microsoft.com/support/. 
  1018.  
  1019. Free Support
  1020. ------------
  1021. Newsgroups are a great place for free peer support. As time and 
  1022. resources allow, Microsoft developers, program managers, support 
  1023. engineers, and test engineers visit the site to collect 
  1024. feedback and answer questions or correct misperceptions. There is 
  1025. no guarantee that you will receive a response from Microsoft to 
  1026. any newsgroup posting. 
  1027.  
  1028. The following newsgroups can be used to ask questions about DCOM95: 
  1029.    - comp.os.ms-windows.programmer.ole 
  1030.    - microsoft.public.win32.programmer.ole
  1031.  
  1032. The DCOM mailing list is another good form of free peer support. 
  1033. An advantage to being on a mailing list is that this is where 
  1034. Microsoft will make early announcements of information on a given 
  1035. topic. Again, it is peer support, and Microsoft staff will often 
  1036. lurk there, but are not guaranteed to respond to any postings. To 
  1037. learn more about the DCOM mailing list, please review our Mailing 
  1038. List page at http://www.microsoft.com/sitebuilder/resource/mail.asp.
  1039.  
  1040. Providing Feedback 
  1041. ------------------
  1042. Please send any comments or bug reports to the DCOM mailing list. 
  1043.  
  1044. Resources
  1045. ---------
  1046. You can find additional information about DCOM on the COM Home 
  1047. Page at http://www.microsoft.com/com/.
  1048.  
  1049.